package com.krtech.wecard.module.sys.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

@ApiModel(value = "com-krtech-wecard-module-sys-entity-SysUser")
@Data
@TableName(value = "sys_user")
public class SysUser implements Serializable {
    @TableId(value = "user_id", type = IdType.AUTO)
    @ApiModelProperty(value = "")
    private Long userId;

    /**
     * 账号
     */
    @TableField(value = "user_name")
    @ApiModelProperty(value = "账号")
    private String userName;

    /**
     * 加密后的密码
     */
    @TableField(value = "password")
    @ApiModelProperty(value = "加密后的密码")
    @JsonIgnore
    private String password;

    /**
     * 用户名称
     */
    @TableField(value = "nick_name")
    @ApiModelProperty(value = "用户名称")
    private String nickName;

    /**
     * 用户编号
     */
    @TableField(value = "user_code")
    @ApiModelProperty(value = "用户编号")
    private String userCode;

    @TableField(value = "sex")
    @ApiModelProperty(value = "")
    private Integer sex;

    @TableField(value = "enable")
    @ApiModelProperty(value = "")
    private Integer enable;

    @TableField(value = "create_time")
    @ApiModelProperty(value = "")
    private Date createTime;

    /**
     * 微信公众号openId
     */
    @TableField(value = "public_open_id")
    @ApiModelProperty(value = "普通人员openId")
    @JsonIgnore
    private String publicOpenId;

    /**
     * 微信开放平台openId
     */
    @TableField(value = "open_id_admin")
    @ApiModelProperty(value = "管理员openId")
    @JsonIgnore
    private String openIdAdmin;

    /**
     * 学校名称
     */
    @TableField(value = "school_name")
    @ApiModelProperty(value = "学校名称")
    private String schoolName;

    /**
     * 学校id
     */
    @TableField(value = "school_id")
    @ApiModelProperty(value = "学校id")
    private Integer schoolId;

    /**
     * 学校编号
     */
    @TableField(value = "school_code")
    @ApiModelProperty(value = "学校编号")
    private String schoolCode;

    @TableField(value = "dept_id")
    @ApiModelProperty(value = "")
    private Long deptId;

    /**
     * 部门code
     */
    @TableField(value = "dept_code")
    @ApiModelProperty(value = "部门code")
    private String deptCode;

    /**
     * 部门名称
     */
    @TableField(value = "dept_name")
    @ApiModelProperty(value = "部门名称")
    private String deptName;

    @TableField(value = "phone")
    @ApiModelProperty(value = "")
    private String phone;

    @TableField(value = "email")
    @ApiModelProperty(value = "")
    private String email;

    @TableField(value = "qq")
    @ApiModelProperty(value = "")
    private String qq;

    @TableField(value = "weixin")
    @ApiModelProperty(value = "")
    private String weixin;

    /**
     * 证件类型
     */
    @TableField(value = "certificate_type")
    @ApiModelProperty(value = "证件类型")
    private String certificateType;

    /**
     * 证件号码
     */
    @TableField(value = "certificate_number")
    @ApiModelProperty(value = "证件号码")
    private String certificateNumber;

    /**
     * 头像
     */
    @TableField(value = "avatar")
    @ApiModelProperty(value = "头像")
    private String avatar;

    /**
     * 标签
     */
    @TableField(value = "tag")
    @ApiModelProperty(value = "标签")
    private String tag;

    /**
     * 身份标识
     */
    @TableField(value = "identity")
    @ApiModelProperty(value = "身份标识")
    private String identity;

    /**
     * 身份识别id
     */
    @TableField(value = "identity_id")
    @ApiModelProperty(value = "身份识别id")
    private Integer identityId;

    /**
     * 身份识别code
     */
    @TableField(value = "identity_code")
    @ApiModelProperty(value = "身份识别code")
    private String identityCode;

    /**
     * 职称
     */
    @TableField(value = "title")
    @ApiModelProperty(value = "职称")
    private String title;

    /**
     * 职务
     */
    @TableField(value = "position")
    @ApiModelProperty(value = "职务")
    private String position;

    /**
     * 家庭住址
     */
    @TableField(value = "address")
    @ApiModelProperty(value = "家庭住址")
    private String address;

    /**
     * 民族
     */
    @TableField(value = "nation")
    @ApiModelProperty(value = "民族")
    private String nation;

    /**
     * 生源地
     */
    @TableField(value = "students")
    @ApiModelProperty(value = "生源地")
    private String students;

    /**
     * 毕业学校
     */
    @TableField(value = "graduated_school")
    @ApiModelProperty(value = "毕业学校")
    private String graduatedSchool;

    /**
     * 物理卡号
     */
    @TableField(value = "physical_card")
    @ApiModelProperty(value = "物理卡号")
    private String physicalCard;

    /**
     * 物理芯片卡号
     */
    @TableField(value = "physical_chip_card")
    @ApiModelProperty(value = "物理芯片卡号")
    private String physicalChipCard;

    /**
     * 软删除
     */
    @TableField(value = "del_flag")
    @ApiModelProperty(value = "软删除")
    @JsonIgnore
    private Integer delFlag;

    /**
     * 年级名称
     */
    @TableField(value = "grade_name")
    @ApiModelProperty(value = "年级名称")
    private String gradeName;

    /**
     * 年级编号
     */
    @TableField(value = "grade_code")
    @ApiModelProperty(value = "年级编号")
    private String gradeCode;

    /**
     * 专业名称
     */
    @TableField(value = "major_name")
    @ApiModelProperty(value = "专业名称")
    private String majorName;

    /**
     * 专业编号
     */
    @TableField(value = "major_code")
    @ApiModelProperty(value = "专业编号")
    private String majorCode;

    /**
     * 班级名称
     */
    @TableField(value = "class_name")
    @ApiModelProperty(value = "班级名称")
    private String className;

    /**
     * 班级编号
     */
    @TableField(value = "class_code")
    @ApiModelProperty(value = "班级编号")
    private String classCode;

    /**
     * 校区
     */
    @TableField(value = "campus")
    @ApiModelProperty(value = "校区")
    private String campus;

    /**
     * 宿舍号
     */
    @TableField(value = "dormitory_code")
    @ApiModelProperty(value = "宿舍号")
    private String dormitoryCode;

    /**
     * 国籍
     */
    @TableField(value = "nationality")
    @ApiModelProperty(value = "国籍")
    private String nationality;

    /**
     * 微信小程序openid
     */
    @TableField(value = "mip_open_id")
    @ApiModelProperty(value = "微信小程序openid")
    @JsonIgnore
    private String mipOpenId;

    /**
     * 是否关注公众号
     */
    @TableField(value = "has_focus_public_number")
    @ApiModelProperty(value = "是否关注公众号")
    private Integer hasFocusPublicNumber;

    private static final long serialVersionUID = 1L;

    public static final String COL_USER_ID = "user_id";

    public static final String COL_USER_NAME = "user_name";

    public static final String COL_PASSWORD = "password";

    public static final String COL_NICK_NAME = "nick_name";

    public static final String COL_USER_CODE = "user_code";

    public static final String COL_SEX = "sex";

    public static final String COL_ENABLE = "enable";

    public static final String COL_CREATE_TIME = "create_time";

    public static final String COL_PUBLIC_OPEN_ID = "public_open_id";

    public static final String COL_OPEN_ID_ADMIN = "open_id_admin";

    public static final String COL_SCHOOL_NAME = "school_name";

    public static final String COL_SCHOOL_ID = "school_id";

    public static final String COL_SCHOOL_CODE = "school_code";

    public static final String COL_DEPT_ID = "dept_id";

    public static final String COL_DEPT_CODE = "dept_code";

    public static final String COL_DEPT_NAME = "dept_name";

    public static final String COL_PHONE = "phone";

    public static final String COL_EMAIL = "email";

    public static final String COL_QQ = "qq";

    public static final String COL_WEIXIN = "weixin";

    public static final String COL_CERTIFICATE_TYPE = "certificate_type";

    public static final String COL_CERTIFICATE_NUMBER = "certificate_number";

    public static final String COL_AVATAR = "avatar";

    public static final String COL_TAG = "tag";

    public static final String COL_IDENTITY = "identity";

    public static final String COL_IDENTITY_ID = "identity_id";

    public static final String COL_IDENTITY_CODE = "identity_code";

    public static final String COL_TITLE = "title";

    public static final String COL_POSITION = "position";

    public static final String COL_ADDRESS = "address";

    public static final String COL_NATION = "nation";

    public static final String COL_STUDENTS = "students";

    public static final String COL_GRADUATED_SCHOOL = "graduated_school";

    public static final String COL_PHYSICAL_CARD = "physical_card";

    public static final String COL_PHYSICAL_CHIP_CARD = "physical_chip_card";

    public static final String COL_DEL_FLAG = "del_flag";

    public static final String COL_GRADE_NAME = "grade_name";

    public static final String COL_GRADE_CODE = "grade_code";

    public static final String COL_MAJOR_NAME = "major_name";

    public static final String COL_MAJOR_CODE = "major_code";

    public static final String COL_CLASS_NAME = "class_name";

    public static final String COL_CLASS_CODE = "class_code";

    public static final String COL_CAMPUS = "campus";

    public static final String COL_DORMITORY_CODE = "dormitory_code";

    public static final String COL_NATIONALITY = "nationality";

    public static final String COL_MIP_OPEN_ID = "mip_open_id";
}